#pragma once
#include "..\DXAMLCommon.h"



class Base
{
public: 
	static void * __stdcall operator new(XUINT32, struct IMalloc *, enum NewNoExceptionEnum, enum NewZeroMemoryEnum, enum NewRecordAllocationStackEnum);
	static void * __stdcall operator new(XUINT32, struct IMalloc *, enum NewZeroMemoryEnum, enum NewRecordAllocationStackEnum);
	static void * __stdcall operator new(XUINT32, struct IMalloc *, enum NewRecordAllocationStackEnum);
	static void * __stdcall operator new(XUINT32, struct IMalloc *, enum NewNoExceptionEnum, enum NewZeroMemoryEnum);
	static void * __stdcall operator new(XUINT32, struct IMalloc *, enum NewZeroMemoryEnum);
	static void * __stdcall operator new(XUINT32, struct IMalloc *, enum NewNoExceptionEnum);
	static void * __stdcall operator new(XUINT32 cSize, struct IMalloc * pAddress);
	static void __stdcall operator delete(void * pv, struct IMalloc * pMalloc);
	static void __stdcall operator delete(void * pv, enum NewRecordAllocationStackEnum pMalloc);
	static void __stdcall operator delete(void * pAddress);
private: 
	Base();
protected: 
	Base(struct IMalloc *);
	virtual ~Base();
	void SetMalloc(struct IMalloc *);
	struct IMalloc * _pMalloc;
};